#pragma once

#include <string>
#include <map>
using namespace std;

#include "stdafx.h"
namespace Tpc
{
#pragma pack(4)
	struct header
	{
		char magic[8]; // "TOPO_CAT"
		int pad1[5];   // 0x01000000, 0x00000020, 0x00000030, 0x00000018, 0x00000000
		int pad2; 
	};

#pragma pack(4)
	struct folderEntry
	{
		char name[20];
		int folders;
		int files;
		int flags; // 00000100: level 1, 00000200: level 2, ...
		char pad[16];
	};

#pragma pack(4)
	struct fileEntry
	{
		char name[8];
		char pad[16];
	};

	void loadCatalogs(string catalogPath, map<string,string>& catalogs);
}
